package org.example.service;

import com.github.pagehelper.PageInfo;
import org.example.common.ResponseResult;
import org.example.pojo.GoodDto;
import org.example.pojo.Goods;
import com.baomidou.mybatisplus.extension.service.IService;
import org.springframework.web.bind.annotation.RequestBody;

/**
* @author 贾媛婕
* @description 针对表【goods】的数据库操作Service
* @createDate 2024-09-05 10:19:03
*/
public interface GoodsService extends IService<Goods> {

    /**
     * 添加商品
     * @param goods
     * @return
     */
    ResponseResult addGood(Goods goods);

    /**
     * 商品列表
     * @return
     */
    ResponseResult goodList(GoodDto dto);

    /**
     * 删除商品
     * @param id
     * @return
     */
    ResponseResult delGood(Integer id);

    /**
     * 修改商品信息
     * @param goods
     * @return
     */
    ResponseResult updateGood(Goods goods);

    /**
     * 根据id查询单个商品
     * @param id
     * @return
     */
    ResponseResult getOne(Integer id);
    /**
     * 商品进行审核  审核通过添加
     * @param id
     * @return
     */
    ResponseResult autoGood(Integer id);

    /**
     * 对下架商品进行上架处理
     * @param id
     * @return
     */
    ResponseResult upGood(Integer id);

    /**
     * 对上架商品进行下架处理
     * @param id
     * @return
     */
    ResponseResult downGood(Integer id);

    /***
     * 完成对es数据的初始化
     * @return
     */
    ResponseResult enInit();

    /**
     * 对用户的关键词进行es中的搜索
     * @param dto
     * @return
     */
    ResponseResult searchKeyWord(GoodDto dto);

}
